package LeetCode1;

/**
 * 打家劫舍（动态规划）
 * 偷窃第 kk 间房屋，那么就不能偷窃第 k-1k−1 间房屋，偷窃总金额为前 k-2k−2 间房屋的最高总金额与第 kk 间房屋的金额之和。
 * 不偷窃第 kk 间房屋，偷窃总金额为前 k-1k−1 间房屋的最高总金额。
 * @author 是阿秋啊
 * @date 2022/08/25 21:11
 **/
public class Num198 {
    public int rob(int[] nums) {
        int len = nums.length;
        if(len == 1){
            return nums[0];
        }
        int[] dp = new int[len];
        dp[0] = nums[0];
        dp[1] = Math.max(nums[0],nums[1]);
        for(int i = 2; i < len; i++) {
            dp[i] = Math.max(dp[i - 2] + nums[i],dp[i - 1]);
        }
        return dp[len - 1];
    }
}